<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
   
    <div id="app">
        <input type="button" value="toggle" @click="toggle">

        <!-- v-if的特点是每次都会重新删除或创建元素 -->
        <!-- v-show的特点 每次不会重新进行DOM的删除和创建操作，只是切换了元素的display: none 样式 -->
        <!-- v-if有较高的切换性能消耗；v-show有较高的初始渲染消耗 -->
        <!-- 如果涉及频繁的切换，最好不要使用v-if -->
        <!-- 如果元素可能永远也不会被显示出来，就不要使用v-show -->
        <h3 v-if="flag">这是用v-if控制的元素</h3>
        <h3 v-show="flag">这是用v-show控制的元素</h3>
    </div>

    <script>
        var vm = new Vue({
            el: '#app',
            data: {
                flag: true
            },
            methods: {
                toggle(){
                    this.flag = !this.flag
                }
            }
        });
    </script>
</body>
</html>